﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Exem
{
    class Program
    {
    
        static void Main(string[] args)
        {
            S();
            //SInfo();
            //Itext();
            //Ctext();
        }
        static void S() {
            Clc clc = new Clc();
            Console.WriteLine("请输入圆的半径：");
            double R1 = Convert.ToInt32(Console.ReadLine());
            clc.R = R1;
            Console.WriteLine(clc.R);
            clc.Clcer(clc.R);
            Console.WriteLine("请输入长方形的长：");
            double A = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入长方形的宽：");
            double B = Convert.ToInt32(Console.ReadLine());
            clc.Clcer(A, B);
        }
        static void SInfo() {
            Studnet studnet = new Studnet(1,"w",0);
            studnet.Say();
        }
        static void Itext() {
            Dog dog = new Dog("二哈");
            dog.Say();
            //dog.Move();
            Atexts(dog);
            //dog.Eat();
            //dog.MakeLove();
            Itexts(dog);

            Duck duck = new Duck("唐老鸭");
            duck.Say();
            duck.Move();
            duck.Eat();
           // Itexts(duck);
        }
        static void Itexts(Interface1 interface1) {
            interface1.MakeLove();
        }
        static void Atexts(Animal animal) {
            animal.Move();
            animal.Eat();//直接调用到子类重写中
        }
        static void Ctext() {
            string str = "与其他面向对象语言一样，C# 语言也具有面向对象语言的基本特征，" +
                "即封装、继承、 多态。封装：就是将代码看作一个整体，例如使用类、方法、接口等。" +
                "在使用定义好的类、 方法、接口等对象时不必考虑其细节，只需要知道其对象名以及所需要的参数即可，" +
                "也是一种提升代码安全性的方法。继承：是一种体现代码重用性的特性，减少代码的冗余，" +
                "但在 C# 语言中仅支持单继承。多态：不仅体现了代码的重用性，也体现了代码的灵活性，" +
                "它主要通过继承和实现接口的方式，让类或接口中的成员表现出不同的作用。";

            //int a = 0, b = 0;
            //for (int i = 0; i < str.Length; i++)
            //{
            //    if (str[i]=='类')
            //    {
            //        a++;
            //    }
            //    if (str[i].Equals('码'))
            //    {
            //        b++;
            //    }
            //}
            string newstr1= str.Replace("类","");
            string newstr2 = str.Replace("码","");
            Console.WriteLine($"类的个数为{str.Length-newstr1.Length},码的个数为{str.Length-newstr2.Length}");


            char[] leave = { '类' };
            string[] newstr3 = str.Split(leave);//这个数组是来保存段数的！！！
            Console.WriteLine($"类的个数是{newstr3.Length-1}");

            char[] leave2 = { '码' };
            string[] newstr4 = str.Split(leave2);
            Console.WriteLine($"码的个数是{newstr4.Length-1}");

            Console.WriteLine("请输入：");
            string name = Console.ReadLine();
            string sex = Console.ReadLine();

            StringBuilder stringBuilder = new StringBuilder("姓名："+name +"性别："+sex);
            stringBuilder.Append("  我的体重是80kg");
            //stringBuilder.ToString();
            for (int i = 0; i < 8; i++)
            {
                stringBuilder.Append(" "+i+" ");
            }
            Console.WriteLine(stringBuilder);
        }
    }
}
